function getFirstDayWeek (date) {
  //根据原日期得到一个新日期   => 重新赋值给形参
  date = new Date(date);
  date.setDate(1);
  var week = date.getDay()
  return week == 0 ? 7 : week;
}

function getBeforeMonthDays (date) {
  //根据原日期得到一个新日期   => 重新赋值给形参
  date = new Date(date);
  date.setDate(0);   // 2021-8-0 =>  2021-7-31
  return date.getDate();
}

function getThisMonthDays (date) {
  date = new Date(date);

  date.setDate(1);    // 2021-8-1
  // 获取对应的月份  再往后推一个月    2021-8-1  => 2021-9-1
  date.setMonth(date.getMonth() + 1);
  date.setDate(0);   // 2021-9-0 => 2021-8-31
  return date.getDate();
}